<!--
  ****************************************************************************
  * Copyright 2018-2022,2023 Thomas E. Dickey                                *
  * Copyright 1998-2016,2017 Free Software Foundation, Inc.                  *
  *                                                                          *
  * Permission is hereby granted, free of charge, to any person obtaining a  *
  * copy of this software and associated documentation files (the            *
  * "Software"), to deal in the Software without restriction, including      *
  * without limitation the rights to use, copy, modify, merge, publish,      *
  * distribute, distribute with modifications, sublicense, and/or sell       *
  * copies of the Software, and to permit persons to whom the Software is    *
  * furnished to do so, subject to the following conditions:                 *
  *                                                                          *
  * The above copyright notice and this permission notice shall be included  *
  * in all copies or substantial portions of the Software.                   *
  *                                                                          *
  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS  *
  * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF               *
  * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.   *
  * IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,   *
  * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR    *
  * OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR    *
  * THE USE OR OTHER DEALINGS IN THE SOFTWARE.                               *
  *                                                                          *
  * Except as contained in this notice, the name(s) of the above copyright   *
  * holders shall not be used in advertising or otherwise to promote the     *
  * sale, use or other dealings in this Software without prior written       *
  * authorization.                                                           *
  ****************************************************************************
  * @Id: clear.1,v 1.38 2023/09/16 23:39:05 tom Exp @
  * these would be fallbacks for DS/DE,
  * but groff changed the meaning of the macros.
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
<HEAD>
<meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
<meta name="generator" content="Manpage converted by man2html - see https://invisible-island.net/scripts/readme.html#others_scripts">
<TITLE>clear 1 2023-09-16 ncurses 6.4 User commands</TITLE>
<link rel="author" href="mailto:bug-ncurses@gnu.org">

</HEAD>
<BODY>
<H1 class="no-header">clear 1 2023-09-16 ncurses 6.4 User commands</H1>
<PRE>
<STRONG><A HREF="clear.1.html">clear(1)</A></STRONG>                         User commands                        <STRONG><A HREF="clear.1.html">clear(1)</A></STRONG>




</PRE><H2><a name="h2-NAME">NAME</a></H2><PRE>
       <STRONG>clear</STRONG> - clear the terminal screen


</PRE><H2><a name="h2-SYNOPSIS">SYNOPSIS</a></H2><PRE>
       <STRONG>clear</STRONG> [<STRONG>-T</STRONG><EM>type</EM>] [<STRONG>-V</STRONG>] [<STRONG>-x</STRONG>]


</PRE><H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE>
       <STRONG>clear</STRONG>  clears your terminal's screen if this is possible, including the
       terminal's scrollback  buffer  (if  the  extended  "E3"  capability  is
       defined).   <STRONG>clear</STRONG>  looks in the environment for the terminal type given
       by the environment variable <STRONG>TERM</STRONG>, and then in the <STRONG>terminfo</STRONG> database  to
       determine how to clear the screen.

       <STRONG>clear</STRONG>  writes  to  the  standard output.  You can redirect the standard
       output to a file (which  prevents  <STRONG>clear</STRONG>  from  actually  clearing  the
       screen),  and  later  <STRONG>cat</STRONG>  the  file to the screen, clearing it at that
       point.


</PRE><H2><a name="h2-OPTIONS">OPTIONS</a></H2><PRE>
       <STRONG>-T</STRONG> <EM>type</EM>
            indicates  the  <EM>type</EM>  of  terminal.   Normally  this   option   is
            unnecessary,  because  the  default  is taken from the environment
            variable <STRONG>TERM</STRONG>.  If <STRONG>-T</STRONG> is specified, then the shell variables <STRONG>LINES</STRONG>
            and <STRONG>COLUMNS</STRONG> will also be ignored.

       <STRONG>-V</STRONG>   reports the version of ncurses which was used in this program, and
            exits.  The options are as follows:

       <STRONG>-x</STRONG>   do not attempt to clear the terminal's scrollback buffer using the
            extended "E3" capability.


</PRE><H2><a name="h2-HISTORY">HISTORY</a></H2><PRE>
       A  <STRONG>clear</STRONG>  command  appeared  in 2.79BSD dated February 24, 1979.  Later
       that was provided in Unix 8th edition (1985).

       AT&amp;T adapted a different BSD program  (<STRONG>tset</STRONG>)  to  make  a  new  command
       (<STRONG>tput</STRONG>),  and used this to replace the <STRONG>clear</STRONG> command with a shell script
       which calls <STRONG>tput</STRONG> <STRONG>clear</STRONG>, e.g.,

           /usr/bin/tput ${1:+-T$1} clear 2&gt; /dev/null
           exit

       In 1989, when Keith Bostic revised the BSD  <STRONG>tput</STRONG>  command  to  make  it
       similar  to  the  AT&amp;T  <STRONG>tput</STRONG>,  he  added  a  shell script for the <STRONG>clear</STRONG>
       command:

           exec tput clear

       The remainder of the script in each case is a copyright notice.

       The ncurses <STRONG>clear</STRONG> command began in 1995 by adapting  the  original  BSD
       <STRONG>clear</STRONG> command (with terminfo, of course).

       The <STRONG>E3</STRONG> extension came later:

       <STRONG>o</STRONG>   In  June  1999, <STRONG>xterm</STRONG> provided an extension to the standard control
           sequence for clearing the screen.  Rather than  clearing  just  the
           visible part of the screen using

               printf '\033[2J'

           one could clear the <EM>scrollback</EM> using

               printf '\033[<STRONG>3</STRONG>J'

           This  is  documented  in  <EM>XTerm</EM>  <EM>Control</EM>  <EM>Sequences</EM>  as  a  feature
           originating with <STRONG>xterm</STRONG>.

       <STRONG>o</STRONG>   A few other terminal developers adopted the feature, e.g., PuTTY in
           2006.

       <STRONG>o</STRONG>   In  April  2011, a Red Hat developer submitted a patch to the Linux
           kernel, modifying its console driver to do  the  same  thing.   The
           Linux  change,  part  of  the  3.0  release, did not mention <STRONG>xterm</STRONG>,
           although it was cited in the Red Hat bug report (#683733) which led
           to the change.

       <STRONG>o</STRONG>   Again,  a  few  other terminal developers adopted the feature.  But
           the next relevant step was a change to the <STRONG>clear</STRONG> program in 2013 to
           incorporate this extension.

       <STRONG>o</STRONG>   In  2013,  the <STRONG>E3</STRONG> extension was overlooked in <STRONG>tput</STRONG> with the "clear"
           parameter.  That was addressed in  2016  by  reorganizing  <STRONG>tput</STRONG>  to
           share its logic with <STRONG>clear</STRONG> and <STRONG>tset</STRONG>.


</PRE><H2><a name="h2-PORTABILITY">PORTABILITY</a></H2><PRE>
       Neither IEEE Std 1003.1/The Open  Group  Base  Specifications  Issue  7
       (POSIX.1-2008) nor X/Open Curses Issue 7 documents tset or reset.

       The latter documents <STRONG>tput</STRONG>, which could be used to replace this  utility
       either  via  a shell script or by an alias (such as a symbolic link) to
       run <STRONG>tput</STRONG> as <STRONG>clear</STRONG>.


</PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
       <STRONG><A HREF="tput.1.html">tput(1)</A></STRONG>, <STRONG>xterm(1)</STRONG>, <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>.

       This describes <STRONG>ncurses</STRONG> version 6.4 (patch 20230917).



ncurses 6.4                       2023-09-16                          <STRONG><A HREF="clear.1.html">clear(1)</A></STRONG>
</PRE>
<div class="nav">
<ul>
<li><a href="#h2-NAME">NAME</a></li>
<li><a href="#h2-SYNOPSIS">SYNOPSIS</a></li>
<li><a href="#h2-DESCRIPTION">DESCRIPTION</a></li>
<li><a href="#h2-OPTIONS">OPTIONS</a></li>
<li><a href="#h2-HISTORY">HISTORY</a></li>
<li><a href="#h2-PORTABILITY">PORTABILITY</a></li>
<li><a href="#h2-SEE-ALSO">SEE ALSO</a></li>
</ul>
</div>
</BODY>
</HTML>
